<?php

class SchemaLoader{

	public static function getInstance(){
		self::load();
		return new SchemaLoader();
	}
	
	
	private static function load(){
		$dir = dirname(__FILE__);
		$dir.="/";
		require_once $dir.'../interfaces/ISchemaReader.php';
		require_once $dir.'../interfaces/ISchemaElement.php';
		require_once $dir.'../schema/SchemaException.php';
		require_once $dir.'../schema/Schema.php';
		require_once $dir.'../schema/Table.php';
		require_once $dir.'../schema/Field.php';
		require_once $dir.'../schema/Index.php';
		require_once $dir.'../schema/ForeignKey.php';
		require_once $dir.'../schema/ForeignKeyReference.php';

		require_once $dir.'../config/Group.php';
		require_once $dir.'../config/Datasource.php';

		require_once $dir.'../interfaces/ISchemaWriter.php';
		require_once $dir.'../interfaces/ISchemaReader.php';
		require_once $dir.'../schema/SchemaReader.php';
		require_once $dir.'../schema/SchemaWriter.php';
		require_once $dir.'../schema/BaseDomainClassGenerator.php';

		require_once $dir.'../schema/AbstractSynchonizer.php';
		require_once $dir.'../schema/synchronizers/MysqlSynchronizer.php';
		require_once $dir.'../schema/ResolvedMismatch.php';
		require_once $dir.'../schema/AbstractMismatch.php';
		require_once $dir.'../schema/SchemaMismatch.php';
		require_once $dir.'../schema/DatasourceMismatch.php';

		require_once $dir.'../config/ConfigReader.php';
	}
}